package com.school.entity;

/**
 * 父类：Person（抽象师生的共性）
 * 权限说明：protected属性允许子类（同包/不同包）访问，非子类跨包不可访问
 */
public class Person {
    // 共性属性：子类可通过protected直接访问
    protected String id;     // 统一ID（学生ID/教师ID）
    protected String name;   // 统一姓名（学生姓名/教师姓名）
    protected String gender; // 统一性别

    // 父类构造方法：初始化共性属性
    public Person(String id, String name, String gender) {
        this.id = id;
        this.name = name;
        this.gender = gender;
    }

    // 父类业务方法：打印工作单（子类需重写，实现各自逻辑）
    public void printWorksheet() {
        // 父类方法仅定义模板，具体实现由子类完成
        System.out.println("=== " + this.name + " 的工作单 ===");
    }

    // Getter方法：供跨包非子类访问（如TestSystem在不同包，需通过Getter获取属性）
    public String getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getGender() {
        return gender;
    }
}